1. Field of the Invention
The present invention generally relates to the determination of surface profiles through optical-based methodologies and apparatus.
2. Description of the Related Art
Accurate measurements of surface profiles are an important element in the inspection of manufactured parts, particularly when the inspection process is an automated process. Current inspection/surface profile measurement systems generally utilize coordinate measuring machines/devices, laser displacement gauges, and/or other similar methods. However, conventional methods are generally configured to measure only a single point at a time, and therefore, these systems are both time and resource intensive.
Techniques such as Moiré Interferometry, Fourier Transform Profilometry, and other grid projection methods require that an entire image (or many entire images) of the surface be analyzed to measure the 3-dimensional position of even one point on the surface, which increases data acquisition and analysis time. Moreover, if there is a discontinuous step in the surface, there will be a corresponding jump in the grid pattern and it may be impossible to uniquely identify gridlines across this discontinuity so that accurate measurements cannot be made. Therefore, although these methods are appealing, the resources required to analyze the entire image surface in a 3-dimensional manner make these methods generally impracticable.
Another method utilized for surface analysis is structured light measurement techniques. For example, structured light projection techniques, where a line, grid, or other regular pattern is optically projected onto the surface of interest, have previously been used with machine vision techniques. However, patterns from these types of techniques are generally difficult to interpret, and further, surface discontinuities in the object are known to result in ambiguous measurements when these techniques are employed. Conventional structured light techniques generally require that the optical projection system and the camera system be placed in precise alignment, which causes difficulty if the system becomes misaligned, as can easily happen. Conventional structured light methods also generally require that the object or the optical system be moved precisely in order to allow for an accurate scan of the entire scene and/or object surface. These precise processes and movements are expensive to generate, operationally slow, and very often require data collection for areas that are not of interest.
In particular, structured light techniques for 3-dimensional surface profiling typically utilizes a line, grid, or other pattern of light projected onto the object field. A video camera may then be utilized to capture an image of the grid or pattern projected onto the target surface. If the surface is flat, the lines of the grid will appear straight and uniform. If the surface is not flat, then the surface features will alter the appearance of the grid, which will appear curved, bent, or otherwise deformed by the shape of the surface, as illustrated in FIG. 1. If the exact position, orientation, and projection angle of each line of the original grid is known and each grid line on the surface is uniquely identifiable, then simple and well-known triangulation formulas may be applied to calculate the profile of the surface from the measured deformation of the grid lines projected on the surface. The simplicity of basic triangulation typically makes it the technique of choice for automated inspection systems, as the more complex techniques require calculations too lengthy for real-time application and usually involve a level of user interpretation of the data for all but the simplest surfaces. Davies discusses the basic concepts and describes the difficulties of applying the approach to typical parts in the publication entitled Machine Vision: Theory, Algorithms and Practicalities, 1997.
Complex surfaces are also difficult to efficiently measure with automated 3-dimensional techniques. Large surface discontinuities generally result in discontinuities in the grid pattern (or the “interference” pattern) that are almost impossible for machine vision systems to interpret autonomously, despite the use of complicated grid phase-shifting techniques and advanced fringe-processing algorithms. Even in the case of triangulation, surfaces with sharp edges and large jumps between surfaces can be problematic due to the requirement of having to uniquely identify each grid line in the image. If exact identification of a grid line is not possible, then the physical position of that line in the original grid remains unknown to the system, and that portion of the measurement incomplete. Therefore, in this situation the resulting triangulation calculation is generally unable to correctly determine the height or surface profile of the surface being measured.
One method of avoiding this ambiguity is to project a single line or stripe onto the object field and move the object under the line to obtain the complete measurement. U.S. Pat. No. 4,875,777 to Harding describes such a structured light profiler process wherein a sheet of light is projected along the cross-sectional plane of interest. A video camera captures images therefrom and a processor is used to determine the profile of the object as it is translated under the sheet of light. Yet another solution to this problem is to measure the surface several times with the projected grid and observation camera at different positions relative to the surface. Obviously, this is a complex solution that is difficult to implement in an autonomous, real-time system, as several images must be acquired and precisely aligned with each other. Another solution is to introduce a time-varying projected pattern instead of a simple stationary grid. One reported method utilizes a back-lit liquid crystal display (LCD) panel which creates a “checkerboard” pattern on the surface, with each pixel varying in time in a unique pattern of “on” and “off” flashes.” By collecting many sequential images of the flashing pattern, each pixel in the image can eventually be identified as originating from a unique pixel in the LCD, thus allowing an exact triangulation calculation to be made. However, this method has several disadvantages, which include the need to synchronize the LCD frame rate to the camera frame rate to ensure accurate recording of the time-varying pixels, and the fact that the field-of-view versus resolution trade-off (as well as the system cost) are all driven by the size and number of pixels in the LCD panel.
Yet another method that has been used to identify specific grid lines is to use multiple light sources controlled to produce different grating projection patterns as described in U.S. Pat. No. 6,122,062 to Bieman and Rutledge. A video camera captures images of the different projection patterns and a processor converts the patterns into a three-dimensional bit map of the object. Further, U.S. Pat. No. 5,636,025 to Bieman and Michniewicz describes a device using Moiré fringes generated by a grating in the light projection device and a second grating in the imaging device. A mechanical translation device moves the camera lens to cause a change in the fringe pattern so that both coarse and fine measurements can be made to overcome the ambiguity problem. However, Moire-type fringe methods require precise non-uniform type motion in moving the grating, require complicated fringe identification algorithms, and the entire image must be recorded to map even one point. Therefore, Moire-type methods are generally undesirable as a result of these additional requirements.
A more practical method of introducing a time-varying pattern onto the surface is to simply rotate a linear projected grid. A specific point on the surface will be alternately light and dark as the grid rotates and the number of on/off flashes occurring at any pixel in the image during one revolution of the grid is determined by the distance of that point from the projected center of the grid's rotation. By measuring the number of grid crossings or “transitions” per revolution, the distance between the point on the grid and the center of the grid's rotation is known, allowing unique identification of the grid source point, and therefore, an unambiguous surface height calculation from the triangulation algorithm. However, reported use of this technique generally indicates that it is very limited in its technical capabilities. For example, measurements were made at only one point on the surface by using the rotating grid to chop a very narrow laser beam, creating a flashing “point” on the target surface. A method of scanning this point would be required to measure the entire surface, which would make the system extremely slow. Also, the signal was recorded by a single photodetector instead of an imaging array, requiring realignment at every point. The data was analyzed with analog electronics by measuring the frequency of the grid-crossings, which is complicated by the fact that the received optical intensity is actually a frequency-modulated signal with a pseudosine wave carrier instead of a simple, single-frequency signal.
Another conventional method, as described by Beeson in an article entitled “Full-Field Surface Profiling Using Dynamic Projected Grids,” (SPIE Proceedings Vol. 3204, 1997, pp. 68–73), includes a rotating grid approach to 3-dimensional structured light surface profiling incorporating a measurement algorithm that is amenable to digital processing, and is more accurate than the analog alternative, while allowing for measurement of any pixel (or all pixels) in the field of view. This approach consists of projecting the image of a rotating grid perpendicularly onto the surface to be measured. A camera images the surface from an angle θ, as shown in FIG. 2. By counting the number of light-dark transitions at a given camera pixel position, it is possible to determine the distance that pixel lies from the axis of rotation of the projected grid pattern. For the case of collimated projection and imaging, the position of a point on the surface can be calculated trigonometrically when the positions and orientations of the projection system and the camera are known. Through analysis of the intervals between light-dark transitions at a given pixel it is possible to interpolate to obtain measurements more accurate than the grid-line spacing.
One shortcoming of the method described by Beeson is the requirement for parallel projection of the grid lines and image. A second problem is that the method given to calculate the surface profile requires precise knowledge of the position and orientation of the grid projection system and the imaging camera used. In many practical applications the positions of the projection system and camera will be constrained by other equipment such as conveyors, robots or other material handling apparatus.
Therefore, in view of the disadvantages presented by conventional surface profiling systems and methods, there is a need for an optical, non-contact method for conducting surface profiling that is capable of simultaneously measuring an array of points on the surface of an object. Further, there is a need for a method for surface profiling that includes a procedure for automatically calibrating the apparatus without the need for precise measurements of the camera and/or projector positions, orientations and optical characteristics. Further still, there is a need for a surface profiling method wherein scanning is not required, and the only motion is generally that of a spinning grid whose rotational speed can be easily controlled with inexpensive hardware. Further, there is a need for a surface profiling apparatus and/or method wherein image-processing algorithms may be incorporated into the system that will allow the identification and measurement of the surface, regardless of the random orientation of the object with respect to the measurement system. Finally, there is a need for a method for surface profiling that includes an interpolation algorithm that results in a measurement resolution much greater than that of traditional grid-projection methods.